package com.study.util;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

public class DruidUtils {
    public static DataSource ds = null;
    static {
        try {
            /*
            1、加载druid.properties 配置文件
            2、创建druid连接池对象
            3、提供获得连接池的方法
            4、提供从连接池中获取连接对象的connection的方法
            */
            //1、加载druid.properties配置文件
            ClassLoader classLoader = DruidUtils.class.getClassLoader();
            InputStream is = classLoader.getResourceAsStream("druid.properties");
            Properties prop = new Properties();
            prop.load(is);
            //2、创建连接连接池对象
            ds = DruidDataSourceFactory.createDataSource(prop);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
        //3、提供获得连接池对象的方法
    }
    public static DataSource getDataSource(){
        return ds;
    }
    //4、提供从连接池中获取连接对象Connection 的方法
    public static Connection getConnection() throws SQLException {
        Connection conn = ds.getConnection();
        return conn;
    }

}
